<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui"
	xmlns:f="http://java.sun.com/jsf/core" lang="pt-br">

<f:view>
		<h:panelGroup id="grid_cep" rendered="#{enderecoManager.renderPanelCadastro}">
			<h:panelGrid columns="2" cellpadding="0" cellspacing="0">
				<h:outputText value="CEP" />
				<h:outputText value="" />
				
				<h:panelGroup id="group_cep">
					<p:inputMask value="#{enderecoManager.cep}" id="cep" label="CEP" maxlength="8" size="10" mask="99999-999" converter="maskConverter"/>
					<p:commandButton value="Localizar" action="#{enderecoManager.showEnderecoByCep}" process="group_cep" update="grid_cep"/>
				</h:panelGroup>
			</h:panelGrid>
		
			<h:panelGrid columns="2" cellpadding="0" cellspacing="0" rendered="#{enderecoManager.renderPanelLogradouro}">
				<h:outputText value="Logradouro" />
				<h:outputText value="Complemento"/>
				
				<h:panelGroup>
					<p:inputText value="#{enderecoManager.endereco.logradouro}" size="50" />
					<h:outputText value="Nº" />
					<p:inputText value="#{enderecoManager.endereco.numero}" size="10" maxlength="15"/>
				</h:panelGroup>
				<p:inputText value="#{enderecoManager.endereco.complemento}" size="21" maxlength="255"/>
			</h:panelGrid>
			
			<h:panelGrid id="grid_logradouro" columns="4" cellpadding="0" cellspacing="0" rendered="#{enderecoManager.renderPanelLogradouro}">
				<h:outputText value="Bairro" />
				<h:outputText value="Estado" />
				<h:outputText value="Cidade" />
				<h:outputText value="Caixa Postal" />
				
				<p:inputText value="#{enderecoManager.endereco.bairro}" size="30" />
				
				
				<p:inputText value="#{enderecoManager.endereco.cidade.descricao}" size="20" readonly="true" rendered="#{enderecoManager.existeEndereco}"/>
				<p:inputText value="#{enderecoManager.endereco.uf.descricao}" size="20" readonly="true" rendered="#{enderecoManager.existeEndereco}"/>
				
				<p:selectOneMenu value="#{enderecoManager.endereco.uf.id}" rendered="#{!enderecoManager.existeEndereco}">
					<f:selectItem itemLabel="- Selecione -" />
					<f:selectItems value="#{enderecoManager.listUF}" 
					var="estado" itemLabel="#{estado.descricao}" itemValue="#{estado.id}" />
					
					<p:ajax event="change" listener="#{enderecoManager.showCidadesByUF}" update=":form:tab:cidade"/>
					
				</p:selectOneMenu>
						
				<p:selectOneMenu value="#{enderecoManager.endereco.cidade.id}" id="cidade" rendered="#{!enderecoManager.existeEndereco}">
					<f:selectItem itemLabel="- Selecione - "/>
					<f:selectItems value="#{enderecoManager.listCidade}" 
						var="cidade" itemLabel="#{cidade.descricao}"  itemValue="#{cidade.id}" />
				</p:selectOneMenu>
				
				
				<p:inputText value="#{enderecoManager.endereco.caixaPostal}" maxlength="255" size="11"/>
				
				
			</h:panelGrid>
			
			<h:panelGroup rendered="#{enderecoManager.renderPanelLogradouro}">
				<p:selectBooleanCheckbox value="#{enderecoManager.endereco.isEnderecoPadrao}" id="endereco_correspondencia" label="Sim"/>
				<h:outputLabel value="Definir como endereço de correspondência" for="endereco_correspondencia" />
			</h:panelGroup>
			
			<br/>
			
			<div class="actions">
				<p:commandButton value="Adicionar" action="#{enderecoManager.addEndereco}" process="grid_cep" update="group_table_endereco,grid_cep" rendered="#{enderecoManager.renderPanelLogradouro}" />
			</div>
	
		</h:panelGroup>
		
		<hr class="border-top mv5"/>
		
		<h:panelGroup id="group_table_endereco">
			<p:dataTable id="table_endereco" var="endereco" emptyMessage="Nenhum endereço foi adicionado." value="#{enderecoManager.listEndereco}" paginator="true" rows="10">
				<p:column headerText="Logradouro">
					<h:outputText value="#{endereco.logradouro} nº #{endereco.numero}" />
					<h:outputText value=", #{endereco.complemento}" rendered="#{!endereco.complemento.isEmpty()}" />
				</p:column>
				<p:column headerText="Bairro">
					<h:outputText value="#{endereco.bairro}" />
				</p:column>
				<p:column headerText="Cidade">
					<h:outputText value="#{endereco.cidade.descricao}" />
				</p:column>
				<p:column headerText="UF">
					<h:outputText value="#{endereco.uf.descricao}" />
				</p:column>
				<p:column headerText="CEP">
					<h:outputText value="#{endereco.cep}" />
				</p:column>
				<p:column headerText="Caixa Postal">
					<h:outputText value="#{endereco.caixaPostal}" />
				</p:column>
				<p:column headerText="">
					<p:commandButton value="Remover" action="#{enderecoManager.removeEndereco}" update=":form:tab:group_table_endereco" disabled="#{pacienteManager.isTelaAtendimento}"> 
						<f:setPropertyActionListener target="#{enderecoManager.endereco}" value="#{endereco}" />
					</p:commandButton>
					<p:commandButton value="Tornar Padrão" action="#{enderecoManager.updateEnderecoPadrao}" rendered ="#{!endereco.isEnderecoPadrao}" update=":form:tab:group_table_endereco" disabled="#{pacienteManager.isTelaAtendimento}">
						<f:setPropertyActionListener target="#{enderecoManager.endereco}" value="#{endereco}" />
					</p:commandButton>
				</p:column>
		
		
			</p:dataTable>
		</h:panelGroup>
	
</f:view>
</html>